package com.hanamaki.exception.demo01;

import com.hanamaki.oop.demo04.A;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

/**
 * 抛出    两个关键词   throw 是在方法体中抛出     throws 在方法上抛出
 *  *      如果在方法上抛出异常 就必须 在 调用此方法的位置上捕获并解决异常
 */
public class Test1 {

    public static void main(String[] args){

        Test1 test1 = new Test1();
//        try {
//            test1.test1(2, 0);
//        } catch (ArithmeticException e) {
//            e.printStackTrace();
//        } finally {
//        }

        test1.test2();




    }

    public void test(int a, int b) {

        if (b == 0) {
            /* throw  是主动抛出异常 */
            throw new ArithmeticException();
        } else {
            System.out.println(a / b);
        }


        System.out.println("业务");


    }

    /**
     * 如果 使用  throws来在方法上 抛出异常 就必须在  调用方法位置处 去捕获异常
     * @param a
     * @param b
     * @throws ArithmeticException
     */
    public void test1(int a, int b)  {

        // 只有当 程序 主动告诉我 有一个 异常 我才能够 去在方法体上抛出
        System.out.println(a / b);
        System.out.println("业务");


    }

    public void test2() {

        File file = new File("c://test.test");

        try {
            new FileInputStream(file);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
        }

    }

}
